import type React from 'react';
import type { StandardProps } from '../../types/common';

export type DividerAlign =
  | 'left'
  | 'center'
  | 'right'
  | [number | string | undefined, number | string | undefined];

export interface DividerProps extends StandardProps {
  /**
   * 分割线方向
   * @default horizontal
   */
  direction?: 'horizontal' | 'vertical';

  /**
   * 分割线类型：分割线是虚线、点线还是实线
   * @default solid
   */
  type?: 'dashed' | 'dotted' | 'solid';

  /**
   * 分割线中的内容；水平方向下有效
   */
  children?: React.ReactNode;

  /**
   * 内容是否加粗
   * @default true
   */
  bold?: boolean;

  /**
   * 带内容时，内容对齐方式;
   * 当传入一个元组时，第一个元素表示左分割线的宽度，第二个元素表示右分割线的宽度, 如果为 undefined 则表示不设置宽度(自动延长)
   * @default center
   */
  align?: DividerAlign;

  /**
   * 分割线上下 margin (垂直方向时为左右 margin)
   * @default 12
   */
  margin?: number | string;
}
